
using System;
using Server.Network;
using Server.Items;

namespace Server.Items
{
	[FlipableAttribute( 0x27A4, 0x27EF )]
	public class Waki : ArmaBase
	{
        public override String DefNome { get { return "Wakizashi"; } }
        public override double DefPeso { get { return 4.5; } }
        public override int DefDannoMinimo { get { return 5; } }
        public override int DefDannoMassimo { get { return 18; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 85; } }
        public override int DefMaxPuntiStruttura { get { return 110; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 1; } }
        public override Layer DefLayer { get { return Layer.OneHanded; } }

		[Constructable]
        public Waki() : base(0x27A4)
		{
		}

        public Waki(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
	
	//-------------------------------------MAX------------------------------------
	
	[FlipableAttribute( 0x27A2, 0x27ED )]
	public class NoDaiki : ArmaBase
	{
        public override String DefNome { get { return "No-Dachi"; } }
        public override double DefPeso { get { return 10; } }
        public override int DefDannoMinimo { get { return 18; } }
        public override int DefDannoMassimo { get { return 23; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 98; } }
        public override int DefMaxPuntiStruttura { get { return 130; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.TwoHanded; } }

		[Constructable]
        public NoDaiki() : base(0x27A2)
		{
		}

        public NoDaiki(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
	
	[FlipableAttribute( 0x2D23, 0x2D23)]
	public class SpadaMazza : ArmaBase
	{
        public override String DefNome { get { return "Spada Mazza"; } }
        public override double DefPeso { get { return 9; } }
        public override int DefDannoMinimo { get { return 12; } }
        public override int DefDannoMassimo { get { return 23; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Pierce1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 85; } }
        public override int DefMaxPuntiStruttura { get { return 110; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.OneHanded; } }

		[Constructable]
        public SpadaMazza() : base(0x2D23)
		{
		}

        public SpadaMazza(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
	
	[FlipableAttribute( 0x143E, 0x143F)]
	public class Alabarda : ArmaBase
	{
        public override String DefNome { get { return "Alabarda"; } }
        public override double DefPeso { get { return 18.0; } }
        public override int DefDannoMinimo { get { return 20; } }
        public override int DefDannoMassimo { get { return 35; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash2H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 85; } }
        public override int DefMaxPuntiStruttura { get { return 110; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 3; } }
        public override Layer DefLayer { get { return Layer.TwoHanded; } }

		[Constructable]
        public Alabarda() : base(0x143E)
		{
		}

        public Alabarda(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
	
	[FlipableAttribute( 0xF4D, 0xF4E)]
	public class Bardica : ArmaBase
	{
        public override String DefNome { get { return "Bardica"; } }
        public override double DefPeso { get { return 17; } }
        public override int DefDannoMinimo { get { return 18; } }
        public override int DefDannoMassimo { get { return 33; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash2H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 85; } }
        public override int DefMaxPuntiStruttura { get { return 120; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 3; } }
        public override Layer DefLayer { get { return Layer.TwoHanded; } }

		[Constructable]
        public Bardica() : base(0xF4D)
		{
		}

        public Bardica(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
	
		
	[FlipableAttribute( 0x26C9, 0x26BF)]
	public class LamaDoppia : ArmaBase
	{
        public override String DefNome { get { return "Lama Doppia"; } }
        public override double DefPeso { get { return 10; } }
        public override int DefDannoMinimo { get { return 16; } }
        public override int DefDannoMassimo { get { return 25; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Pierce2H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 85; } }
        public override int DefMaxPuntiStruttura { get { return 110; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.TwoHanded; } }

		[Constructable]
        public LamaDoppia() : base(0x26C9)
		{
		}

        public LamaDoppia(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
			
	[FlipableAttribute( 0x13B6, 0x13B5)]
	public class Scimitarra : ArmaBase
	{
        public override String DefNome { get { return "Scimitarra"; } }
        public override double DefPeso { get { return 6; } }
        public override int DefDannoMinimo { get { return 12; } }
        public override int DefDannoMassimo { get { return 18; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 70; } }
        public override int DefMaxPuntiStruttura { get { return 95; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.OneHanded; } }

		[Constructable]
        public Scimitarra() : base(0x13B6)
		{
		}

        public Scimitarra(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
	
	[FlipableAttribute( 0x2D35, 0x2D29)]
	public class MaceteElfico : ArmaBase
	{
        public override String DefNome { get { return "Macete Elfico"; } }
        public override double DefPeso { get { return 6; } }
        public override int DefDannoMinimo { get { return 4; } }
        public override int DefDannoMassimo { get { return 19; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 80; } }
        public override int DefMaxPuntiStruttura { get { return 120; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.OneHanded; } }

		[Constructable]
        public MaceteElfico() : base(0x2D35)
		{
		}

        public MaceteElfico(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
	
		
	[FlipableAttribute( 0x2D33, 0x2D27)]
	public class ScimitarraDiRadiant : ArmaBase
	{
        public override String DefNome { get { return "Scimitarra di Radiant"; } }
        public override double DefPeso { get { return 8.5; } }
        public override int DefDannoMinimo { get { return 12; } }
        public override int DefDannoMassimo { get { return 24; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 90; } }
        public override int DefMaxPuntiStruttura { get { return 140; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.OneHanded; } }

		[Constructable]
        public ScimitarraDiRadiant() : base(0x2D33)
		{
		}

        public ScimitarraDiRadiant(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
	
	[FlipableAttribute( 0x26C1, 0x26CB)]
	public class LameCrescenti : ArmaBase
	{
        public override String DefNome { get { return "Lame Crescenti"; } }
        public override double DefPeso { get { return 12; } }
        public override int DefDannoMinimo { get { return 20; } }
        public override int DefDannoMassimo { get { return 24; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash2H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 85; } }
        public override int DefMaxPuntiStruttura { get { return 120; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.TwoHanded; } }

		[Constructable]
        public LameCrescenti() : base(0x26C1)
		{
		}

        public LameCrescenti(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
	
	[FlipableAttribute( 0x27A9, 0x27F4)]
	public class Dai_sho : ArmaBase
	{
        public override String DefNome { get { return "Daisho"; } }
        public override double DefPeso { get { return 6; } }
        public override int DefDannoMinimo { get { return 12; } }
        public override int DefDannoMassimo { get { return 19; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 85; } }
        public override int DefMaxPuntiStruttura { get { return 120; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.TwoHanded; } }

		[Constructable]
        public Dai_sho() : base(0x27A9)
		{
		}

        public Dai_sho(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
	
	[FlipableAttribute( 0x27AB, 0x27F6)]
	public class Teka_gi : ArmaBase
	{
        public override String DefNome { get { return "Tekagi"; } }
        public override double DefPeso { get { return 2; } }
        public override int DefDannoMinimo { get { return 2; } }
        public override int DefDannoMassimo { get { return 7; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Pierce1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 65; } }
        public override int DefMaxPuntiStruttura { get { return 90; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 1; } }
        public override Layer DefLayer { get { return Layer.TwoHanded; } }

		[Constructable]
        public Teka_gi() : base(0x27AB)
		{
		}

        public Teka_gi(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
	
	[FlipableAttribute( 0x27A7, 0x27F2)]
	public class Laja_tang : ArmaBase
	{
        public override String DefNome { get { return "Lajatang"; } }
        public override double DefPeso { get { return 13; } }
        public override int DefDannoMinimo { get { return 14; } }
        public override int DefDannoMassimo { get { return 15; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Pierce1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 100; } }
        public override int DefMaxPuntiStruttura { get { return 150; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.TwoHanded; } }

		[Constructable]
        public Laja_tang() : base(0x27A7)
		{
		}

        public Laja_tang(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
	
	[FlipableAttribute( 0x13B9, 0x13BA)]
	public class SpadaVichinga : ArmaBase
	{
        public override String DefNome { get { return "Spada Vichinga"; } }
        public override double DefPeso { get { return 6.6; } }
        public override int DefDannoMinimo { get { return 12; } }
        public override int DefDannoMassimo { get { return 18; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 100; } }
        public override int DefMaxPuntiStruttura { get { return 130; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.OneHanded; } }

		[Constructable]
        public SpadaVichinga() : base(0x13B9)
		{
		}

        public SpadaVichinga(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
	
	[FlipableAttribute( 0x26BB, 0x26C5)]
	public class Falcetto : ArmaBase
	{
        public override String DefNome { get { return "Falcetto"; } }
        public override double DefPeso { get { return 6; } }
        public override int DefDannoMinimo { get { return 12; } }
        public override int DefDannoMassimo { get { return 18; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 100; } }
        public override int DefMaxPuntiStruttura { get { return 130; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.OneHanded; } }

		[Constructable]
        public Falcetto() : base(0x26BB)
		{
		}

        public Falcetto(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
		
	[FlipableAttribute( 0x26BB, 0x26C5)]
	public class Falce : ArmaBase
	{
        public override String DefNome { get { return "Falce"; } }
        public override double DefPeso { get { return 13; } }
        public override int DefDannoMinimo { get { return 18; } }
        public override int DefDannoMassimo { get { return 22; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash2H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 100; } }
        public override int DefMaxPuntiStruttura { get { return 110; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 3; } }
        public override Layer DefLayer { get { return Layer.TwoHanded; } }

		[Constructable]
        public Falce() : base(0x26BB)
		{
		}

        public Falce(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
			
	}
			
	[FlipableAttribute( 0x26BD, 0x26C7)]
	public class Falcione : ArmaBase
	{
        public override String DefNome { get { return "Falcione"; } }
        public override double DefPeso { get { return 15; } }
        public override int DefDannoMinimo { get { return 22; } }
        public override int DefDannoMassimo { get { return 33; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Pierce2H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 100; } }
        public override int DefMaxPuntiStruttura { get { return 110; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 3; } }
        public override Layer DefLayer { get { return Layer.TwoHanded; } }

		[Constructable]
        public Falcione() : base(0x26BD)
		{
		}

        public Falcione(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
	}
				
	[FlipableAttribute( 0x2D32, 0x2D26)]
	public class LameDanzanti : ArmaBase
	{
        public override String DefNome { get { return "Lame Danzanti"; } }
        public override double DefPeso { get { return 5; } }
        public override int DefDannoMinimo { get { return 12; } }
        public override int DefDannoMassimo { get { return 18; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 100; } }
        public override int DefMaxPuntiStruttura { get { return 110; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.TwoHanded; } }

		[Constructable]
        public LameDanzanti() : base(0x2D32)
		{
		}

        public LameDanzanti(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
					
	}
					
	
	
	[FlipableAttribute( 0x27A8, 0x27F3)]
	public class SpadaDaAllenamento : ArmaBase
	{
        public override String DefNome { get { return "Spada da Allenamento"; } }
        public override double DefPeso { get { return 8; } }
        public override int DefDannoMinimo { get { return 1; } }
        public override int DefDannoMassimo { get { return 2; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 100; } }
        public override int DefMaxPuntiStruttura { get { return 140; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.OneHanded; } }

		[Constructable]
        public SpadaDaAllenamento() : base(0x27A8)
		{
		}

        public SpadaDaAllenamento(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
						
	}
	
	[FlipableAttribute( 0x13FF, 0x13FE)]
	public class Kata_na : ArmaBase
	{
        public override String DefNome { get { return "Katana"; } }
        public override double DefPeso { get { return 7; } }
        public override int DefDannoMinimo { get { return 13; } }
        public override int DefDannoMassimo { get { return 22; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 100; } }
        public override int DefMaxPuntiStruttura { get { return 140; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.OneHanded; } }

		[Constructable]
        public Kata_na() : base(0x13FF)
		{
		}

        public Kata_na(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
						
	}
	
	[FlipableAttribute( 0xF61, 0xF60)]
	public class SpadaLunga : ArmaBase
	{
        public override String DefNome { get { return "Spada Lunga"; } }
        public override double DefPeso { get { return 9; } }
        public override int DefDannoMinimo { get { return 16; } }
        public override int DefDannoMassimo { get { return 25; } }
        public override SkillName DefSkillUtilizzata { get { return SkillName.Taglio; } }
        public override WeaponAnimation DefAnimazione { get { return WeaponAnimation.Slash1H; } }
        public override WeaponType DefTipo { get { return WeaponType.Taglio; } }
        public override int DefMinPuntiStruttura { get { return 100; } }
        public override int DefMaxPuntiStruttura { get { return 140; } }
        public override int DefSuonoTargetColpito { get { return 0x23C; } }
        public override int DefSuonoTargetMancato { get { return 0x238; } }
        public override int DefMaxRangeCaricareColpo { get { return 1; } }
        public override int DefMaxRangeScaricareColpo { get { return 2; } }
        public override Layer DefLayer { get { return Layer.OneHanded; } }

		[Constructable]
        public SpadaLunga() : base(0xF61)
		{
		}

        public SpadaLunga(Serial serial) : base(serial)
		{
		}

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
						
	}
	
	
}